/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package SysAguas.controle;

import SysAguas.visao.DialogAtualizarReserva;
import SysAguas.visao.DialogCadastrarQuartos;
import SysAguas.visao.DialogGerenciarQuartos;
import SysAguas.visao.PanelCadastrarReserva;
import SysAguas.visao.PanelConsultarReserva;
import SysAguas.visao.PanelPrincipal;
import SysAguas.visao.TelaPrincipal;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;

/**
 *
 * @author Heitor
 */
public class TelaPrincipalControle implements ActionListener {

    private TelaPrincipal telaprincipal = null;
    private PanelPrincipal panelPrincipal = null;
    private DialogCadastrarQuartos cadastrarQuartosDialog;
    private DialogGerenciarQuartos dialogGerenciarQuartos;
    private PanelCadastrarReserva panelCadastrarReserva = null;
    private PanelConsultarReserva panelConsultarReserva = null;

    public TelaPrincipalControle(TelaPrincipal telaprincipal, PanelPrincipal panel, PanelCadastrarReserva cadastrar, PanelConsultarReserva consultar) {

        this.telaprincipal = telaprincipal;
        this.panelPrincipal = panel;
        this.panelCadastrarReserva = cadastrar;
        this.panelConsultarReserva = consultar;
    }

    public void actionPerformed(ActionEvent e) {
        System.out.println("novo evento");

        if (e.getSource() == telaprincipal.getItemMenuSair()) {

            System.exit(0);

        }
        if (e.getSource() == telaprincipal.getItemMenuQuartos()) {

            cadastrarQuartosDialog = new DialogCadastrarQuartos(telaprincipal, "Cadastro de Quartos", true);
            cadastrarQuartosDialog.montarCadastrarQuartos();

        }
        if (e.getSource() == telaprincipal.getItemMenuHome()) {

            if (panelCadastrarReserva != null) {
                System.out.println("retira panel cadastrar");
                panelCadastrarReserva.setVisible(false);
                telaprincipal.remove(panelCadastrarReserva);

            }
            if (panelConsultarReserva != null) {
                System.out.println("retira panel consultar");
                panelConsultarReserva.setVisible(false);
                telaprincipal.remove(panelConsultarReserva);
            }
            if (panelPrincipal == null) {
                System.out.println("cria panel principal");
                telaprincipal.add(panelPrincipal, BorderLayout.CENTER);
                // panelPrincipal.montarPanelPrincipal();
                panelPrincipal.setVisible(true);
            } else {
                System.out.println("recuperaPanel principal");
                telaprincipal.add(panelPrincipal, BorderLayout.CENTER);
                panelPrincipal.setVisible(true);
            }
        }
        if (e.getSource() == telaprincipal.getItemMenuSobre()) {
            String texto = "<HTML><i>SysAguas</i> <P>"
                    + "Codificado por Heitor Lima <P>"
                    + "e Diego Francisco Ribeiro </HTML>";
            JOptionPane.showMessageDialog(telaprincipal, texto);
            

        }

        if (e.getSource() == telaprincipal.getItemMenuReservaCriar()) {
            if (panelCadastrarReserva != null) {
                if (panelCadastrarReserva.isVisible()) {
                    System.out.println("existe panel criar 1");

                } else {
                    telaprincipal.add(panelCadastrarReserva, BorderLayout.CENTER);
                    panelCadastrarReserva.setVisible(true);
                }

            }
            if (panelPrincipal != null) {
                System.out.println("retira panel principal 1");
                panelPrincipal.setVisible(false);
                telaprincipal.remove(panelPrincipal);
            }
            if (panelConsultarReserva != null) {
                System.out.println("retira panel consultar");
                panelConsultarReserva.setVisible(false);
                telaprincipal.remove(panelConsultarReserva);
            }

            if (panelCadastrarReserva == null) {
                System.out.println("criou panel criar 2");

                panelCadastrarReserva = new PanelCadastrarReserva();
                telaprincipal.add(panelCadastrarReserva, BorderLayout.CENTER);
                panelCadastrarReserva.montar();
            }
        }

        if (e.getSource() == telaprincipal.getItemMenuReservaBuscar()) {

            if (panelConsultarReserva != null) {
                if (panelConsultarReserva.isVisible()) {
                    System.out.println("existe panel buscar 1");
                    //   return;
                } else {

                    telaprincipal.add(panelConsultarReserva, BorderLayout.CENTER);
                    panelConsultarReserva.setVisible(true);
                }

            }
            if (panelPrincipal != null) {
                System.out.println("retira panel principal");
                panelPrincipal.setVisible(false);
                telaprincipal.remove(panelPrincipal);

            }
            if (panelCadastrarReserva != null) {
                System.out.println("retira panel cadastrar");
                panelCadastrarReserva.setVisible(false);
                telaprincipal.remove(panelCadastrarReserva);

            }
            if (panelConsultarReserva == null) {
                System.out.println("criou panel buscar 2");
                panelConsultarReserva = new PanelConsultarReserva();
                telaprincipal.add(panelConsultarReserva, BorderLayout.CENTER);
                panelConsultarReserva.montarJanelaBusca();
            }
        }
        if(e.getSource() == telaprincipal.getItemMenuGeranciarQuartos() ){
            dialogGerenciarQuartos = new DialogGerenciarQuartos( telaprincipal, "Alterar Quartos", true);
            dialogGerenciarQuartos.montar();
          



        }
    }
}
